//
//  CTGeometry.h
//  e企_2015
//
//  Created by 任玺 on 15/7/17.
//  Copyright (c) 2015年 中移（杭州）信息技术有限公司. All rights reserved.
//

//对应CTGeometry.h, 建立CGRect系列函数的适配宏。核心思想是让 CTRectMake 的入参全部保证为iPhone6坐标系375*667，CTRectMake在通过内部转换，自动适配其他屏幕尺寸。

#ifndef e__2015_EQGeometry_h
#define e__2015_EQGeometry_h

//入参值，须保证是坐标系iPhone6的375*667的值，返回值为当前设备坐标系的值。
#define Adapter_Zoom(iphone6value)                     ((isIPhone6Plus ? (414.f/375.f) : (isIPhone5 ? (320.f/375.f) : (isIPhone4s?(320.f/375.f):1.f)))*(iphone6value))
//入参值，须保证坐标系是当前设备坐标系，返回值为iPhone6坐标系的值。
#define Adapter_Clear(currentValue)                     ((isIPhone6Plus ? (375.f/414.f) : (isIPhone5 ? (375.f/320.f) : (isIPhone4s?(375.f/320.f):1.f)))*(currentValue))


//布局函数，入参值，须保证是坐标系iPhone6的375*667的值，切记4个值都要是iPhone6下的绝对布局
#define CTRectMake(x, y, width, height)         CGRectMake(Adapter_Zoom(x), Adapter_Zoom(y), Adapter_Zoom(width), Adapter_Zoom(height))


//布局辅助函数，入参值，须保证坐标系是当前设备坐标系，返回值为iPhone6坐标系的值。
#define CTRectGetMinY(rect)                     (Adapter_Clear(CGRectGetMinY(rect)))
#define CTRectGetMaxY(rect)                     (Adapter_Clear(CGRectGetMaxY(rect)))

#define CTRectGetMinX(rect)                     (Adapter_Clear(CGRectGetMinX(rect)))
#define CTRectGetMaxX(rect)                     (Adapter_Clear(CGRectGetMaxX(rect)))

#define CTRectGetWidth(rect)                    (Adapter_Clear(CGRectGetWidth(rect)))
#define CTRectGetHeight(rect)                   (Adapter_Clear(CGRectGetHeight(rect)))

#endif
